Notes for randomizer:
Note: all items has their unique, individual sprite ID, 
if there are for example two hats in room and they both use same sprite ID, 
and player picks up one, the other disappears.


What can be easily randomized?
-Room palettes
-Room walls and floors graphics
-Sprite palettes
-Some Item locations(Hats, Potions, Credits)
-Enemies (Just enemies, dont mix enemies and items!)
-Player sprites and palette(via hex-editing), see etc data.txt
-Staff piece locations(five of them)
---
What can be randomized but requires some minor planning?
-Magic boots item location(Key 0F is required if boots are in normal location), there are actually tons of places you can go without them, but you can explore whole game w/o it
-Key items locations(Key itself), There are some possibilities for soft-locks but can be prevented with some looking at map, Id say its reasonable
-Detonators too, but they require little more work, but its doable
-Teleporter destinations, might cause some funkiness regaring what areas can be accessed
-Last staff piece, because of the room that hides its sprites until five of them are revealed
---
What could be randomized but can cause headache or tons of research/trial&error:
-Room exits, in theory its easy but player can easily end up outside of the room, or be stuck in death-loop
-what Keys and detonators do, probably too many possibilities for softlocks if one randomizes what they reveal
-Swap items&enemies, items disappear when they touch spikes, and having to waste item and commit suicide to grab and item is not fun and makes game impossible to 100% if all items are below spikes(more spikes vs extra lives), one room D7 is impossible if enemies are swapped with items with gravity and thus causes soft-lock. Some enemies and blocks are placed to places where player cant go without hacking or cheats.
---
Impossible: 
-Blocks/room layouts, too many possibilities for graphical errors, impossible rooms or crashing the game
-Swap moving platforms with anything else, some migth be possible but most of them causes soft-locks
-Moving sprite positions freely or at pure random, too many possibilities for soft locks or having to write long list of where are safe places to put sprites in
---
Other ides but requires asm or finding data in rom(not documented by me)
-Starting room
-How many lives you start with, starting potion amount
-Allow player to skip title screen and intro



Some other important notes:

Note: This assumes keys and detonators do what they do in unmodified game!

-key in room 0F needs to be there, or otherwise its impossible to get magic boots (if boots are in their original room)
-5 staff pieces needs to be before room E0 or softlock (last staff piece can also be before room E0)
-key in e2 cant be placed past its room(but can before), or softlock
-magic boots should only be in areas you can reach without having them, or there are softlocks.
-Detonator in FA cant be placed in FB since that room opens when you detonate it(duh) 
-key in 77 needs to be placed in cave of the doomed souls, garden of pain or in blooded gardens or otherwise player is stuck in those areas as there is no other way to exit those areas if key 77 isn't collected (see the included picture)
-Detonator 46 cant be placed outside of the red circled area or you re stuck in softlock(there's way around in room 42 but if you pick up the credit then you're fucked)
-Note Detonators dont have gravity and the game likes to put items in mid-air, so is some cases you need to double check the Z direction 
-Also for detonators, if they are in different room than their original, then the new item in detonators old room needs to be in there twice(it should be back-to-back, detonator and triggered detonator sprites. Look at the sprite list.txt)

List of all item sprites in the game (Note USA version! PAL is identical(I think) but Japanese version has differences!):
ID Item(s)								room off.	item off.		ID XY  Z P1 P2	Item(s) hex
-- ---									-----		-----			-- -- -- -- --		
0d Credit								189DA		189DF			EB 44 07 1B 29
0f Key (note)							18bc9		18BD8			D1 20 06 1C 2C
11 Magic Boots (note)					18C22		18c31			D0 A0 08 3A 2A		
16 Green Potion							18DB6		18dc0			DD 00 06 19 29		
1c Staff 1								190DC		190EB			D5 C0 08 16 26		
20 Purple Potion						193A0		193AA			DE 0A 05 13 23
25 Credit								19532		19537			ED 08 07 00 10
28 Hat									196C2		196D1			C1 C0 06 11 21
30 Staff 2								19BB4		19bb9			D6 22 08 16 26
3c Hat									1A014		1A023			C3 C2 16 11 21	
3e Hat									1A105		1A10A			C2 00 06 11 21
3f Hat(duplicate)						1A121		1A126			same as above
36 Hat(duplicate)						19E73		19e78			same as above
42 Credit								1A1F8		1A1FD			EC 40 07 17 27
43 Yellow Potion						1A230		1A23F			E2 20 06 28 38		
46 Detonator (note)						1A3FF		1A404			2C 04 01 2C 1C			
50 Staff 3								1A836		1A83B			D7 20 01 16 26	
57 Credit								1AADD		1AAE2			F1 00 07 16 27		
5e Hat									1ABE8		1ABED			CB 00 06 11 21	
60 Purple Potion						1AC23		1ac28			DF 00 06 13 23
6d Credit								1ADFE		1ae03			F0 04 07 19 29		
77 Key (note)							1B008		1b00d			D4 00 06 18 28
80 Blue Potion							1B11C		1b121			E1 22 06 11 21
8f Purple Potion						1B3A4		1b3a9			E0 22 06 14 24	
9b Hat									1B4D7		1b4dc			C4 22 06 11 21		
A1 Staff 4								1B572		1b577			D8 22 06 16 26
A3 Yellow Potion, Blue Potion, Hat		1B58E		1b593->			DB C2 06 28 38	DC C4 06 11 21	C0 2C 08 11 21
A8 Credit								1B783		1b788			EF 02 07 18 28	
Ae Green Potion							1BE0B		1be10			E7 82 07 2A 3A
B0 Hat									1BF0D		1bf17			C5 00 03 11 21		
B4 Hat									1C166		1c16b			CD 02 07 11 21	
Bf Hat									1C4C0		1c4c5			C6 00 02 11 21	
C7 Key									1C95C		1c961			D2 00 07 1C 2C						
C9 Credit								1CA3C		1ca41			EE 00 07 1C 2C		
Ca Staff 5								1CAB8		1cabd			D9 27 06 16 26	
Cb Purple Potion						1CBDB		1cbe0			E5 00 06 14 24		
Db Yellow Potion						1D39F		1d3a4			E6 44 00 28 38	
E2 Key (note)							1D78F		1d79e			D3 48 05 18 28
E3 Blue Potion							1D843		1d84d			E3 66 03 11 21
E4 Detonator							1D874		1d87E			29 00 04 2A 1A		
E7 Hat, Hat								1D9E9		1d9f3->			C7 24 06 11 21	C8 28 06 11 21
E8 Hat, Hat, Yellow Potion				1DA29		1da2e->			C9 24 06 11 21	CA 26 06 11 21	E4 2C 06 28 38
Ec Yellow Potion						1DADE		1dae3			E8 84 07 28 38
F0 Credit 								1DD19		1dd1e			F2 44 07 14 24
F7 Staff 6								1e158		1e167			DA 00 07 16 26	
Fa Detonator (note)						1E486		1e490			2D 66 01 26 16		
Fb Hat, Purple Potion, Yellow Potion	1E4C3		1e4c8->			CC 00 06 11 21	E9 22 06 14 24	EA 20 06 28 38

I used this as an template for my manual randomizer hack, I might do second one but make it little more involved than just editing item sprite locations.



